package com.czm.art_light.param.request;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.io.Serial;
import java.io.Serializable;

/**
 * 分页请求数据格式封装，所有分页请求的Dto类都应继承该类
 */
@Schema(description = "分页请求 DTO")
@Data
public class PageReqDto implements Serializable {
    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 请求页码，默认第 1 页
     */
    @Schema(description = "请求页码，默认第 1 页")
    private int pageNum = 1;

    /**
     * 每页大小，默认每页 10 条
     */
    @Schema(description = "每页大小，默认每页 10 条")
    private int pageSize = 10;

    /**
     * 是否查询所有，默认不查所有 为 true 时，pageNum 和 pageSize 无效
     */
    @Schema(description = "是否查询所有，默认不查所有 为 true 时，pageNum 和 pageSize 无效")
    private boolean fetchAll = false;

}
